Use g types, add documentation.
authorMatthias Clasen <mclasen@redhat.com>
Sun, 23 Apr 2006 06:26:10 +0000 (06:26 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Sun, 23 Apr 2006 06:26:10 +0000 (06:26 +0000)
2006-04-23  Matthias Clasen  <mclasen@redhat.com>

* gtk/gtkpapersize.[hc]: Use g types, add documentation.

1

ChangeLog
ChangeLog.pre-2-10
gtk/gtkpapersize.c
gtk/gtkpapersize.h

index a088a8a18ffccf125488265dd2c55c36c053d17e..6c17dc7e3c651141eed1a924fa3688d0735aeaaf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2006-04-23  Matthias Clasen  <mclasen@redhat.com>
 
+       * gtk/gtkpapersize.[hc]: Use g types, add documentation.
+
+       * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_get_settings): 
+       Use g_return_val_if_fail in non-void functions.
+
        * gtk/Makefile.am: Add gtkprintutils.[hc]
 
        * gtk/gtkprintutils.[hc]: New files, move the unit conversion
index a088a8a18ffccf125488265dd2c55c36c053d17e..6c17dc7e3c651141eed1a924fa3688d0735aeaaf 100644 (file)
@@ -1,5 +1,10 @@
 2006-04-23  Matthias Clasen  <mclasen@redhat.com>
 
+       * gtk/gtkpapersize.[hc]: Use g types, add documentation.
+
+       * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_get_settings): 
+       Use g_return_val_if_fail in non-void functions.
+
        * gtk/Makefile.am: Add gtkprintutils.[hc]
 
        * gtk/gtkprintutils.[hc]: New files, move the unit conversion
index 476bcb656d1df607c27246fb5d342af804128178..f97d33bb8f602119251c3030989c90842ef0dff7 100644 (file)
@@ -28,6 +28,7 @@
 
 #include "gtkpapersize.h"
 #include "gtkprintutils.h"
+#include "gtkintl.h"
 #include "gtkalias.h"
 
 #include "paper_names_offsets.c"
@@ -37,11 +38,11 @@ struct _GtkPaperSize
   const PaperInfo *info;
 
   /* If these are not set we fall back to info */
-  char *name;
-  char *display_name;
-  char *ppd_name;
+  gchar *name;
+  gchar *display_name;
+  gchar *ppd_name;
   
-  double width, height; /* Stored in mm */
+  gdouble width, height; /* Stored in mm */
   gboolean is_custom;
 };
 
@@ -57,8 +58,8 @@ gtk_paper_size_get_type (void)
   return our_type;
 }
 
-static PaperInfo *
-lookup_paper_info (const char *name)
+static const PaperInfo *
+lookup_paper_info (const gchar *name)
 {
   int lower = 0;
   int upper = G_N_ELEMENTS (standard_names_offsets) - 1;
@@ -82,9 +83,9 @@ lookup_paper_info (const char *name)
 }
 
 static gboolean
-parse_media_size (const char *size,
-                 gdouble    *width_mm, 
-                 gdouble    *height_mm)
+parse_media_size (const gchar *size,
+                 gdouble     *width_mm, 
+                 gdouble     *height_mm)
 {
   const char *p;
   char *e;
@@ -123,10 +124,10 @@ parse_media_size (const char *size,
 }
 
 static gboolean
-parse_full_media_size_name (const char  *full_name,
-                           char       **name,
-                           gdouble     *width_mm, 
-                           gdouble     *height_mm)
+parse_full_media_size_name (const gchar  *full_name,
+                           gchar       **name,
+                           gdouble      *width_mm, 
+                           gdouble      *height_mm)
 {
   const char *p;
   const char *end_of_name;
@@ -186,13 +187,29 @@ gtk_paper_size_new_from_info (const PaperInfo *info)
   return size;
 }
 
+/**
+ * gtk_paper_size_new:
+ * @name: a paper size name, or %NULL
+ * 
+ * Creates a new #GtkPaperSize object by parsing a 
+ * PWG 5101.1-2002 PWG <!-- FIXME link here -->
+ * paper name. 
+ *
+ * If @name is %NULL, the default paper size is returned,
+ * see gtk_paper_size_get_default().
+ * 
+ * Return value: a new #GtkPaperSize, use gtk_paper_size_free()
+ * to free it
+ *
+ * Since: 2.10
+ */
 GtkPaperSize *
-gtk_paper_size_new (const char *name)
+gtk_paper_size_new (const gchar *name)
 {
   GtkPaperSize *size;
   char *short_name;
   double width, height;
-  PaperInfo *info;
+  const PaperInfo *info;
 
   if (name == NULL)
     name = gtk_paper_size_get_default ();
@@ -226,11 +243,30 @@ gtk_paper_size_new (const char *name)
   return size;
 }
 
+/**
+ * gtk_paper_size_new_from_ppd:
+ * @ppd_name: a PPD paper name
+ * @ppd_display_name: the corresponding human-readable name
+ * @width: the paper width, in points
+ * @height: the paper height in points
+ * 
+ * Creates a new #GtkPaperSize object by using 
+ * PPD information. 
+ * 
+ * If @ppd_name is not a recognized PPD paper name, 
+ * @ppd_display_name, @width and @height are used to 
+ * construct a custom #GtkPaperSize object.
+ *
+ * Return value: a new #GtkPaperSize, use gtk_paper_size_free()
+ * to free it
+ *
+ * Since: 2.10
+ */
 GtkPaperSize *
-gtk_paper_size_new_from_ppd (const char *ppd_name,
-                            const char *ppd_display_name,
-                            gdouble     width,
-                            gdouble     height)
+gtk_paper_size_new_from_ppd (const gchar *ppd_name,
+                            const gchar *ppd_display_name,
+                            gdouble      width,
+                            gdouble      height)
 {
   char *name;
   const char *lookup_ppd_name;
@@ -267,7 +303,7 @@ gtk_paper_size_new_from_ppd (const char *ppd_name,
        }
     }
 
-  name = g_strdup_printf ("ppd_%s", ppd_name);
+  name = g_strconcat ("ppd_", ppd_name, NULL);
   size = gtk_paper_size_new_custom (name, ppd_display_name, width, height, GTK_UNIT_POINTS);
   g_free (name);
 
@@ -283,13 +319,28 @@ gtk_paper_size_new_from_ppd (const char *ppd_name,
   return size;
 }
 
-
+/**
+ * gtk_paper_size_new_custom:
+ * @name: the paper name 
+ * @display_name: the human-readable name
+ * @width: the paper width, in units of @unit
+ * @height: the paper height, in units of @unit
+ * @unit: the unit for @width and @height
+ * 
+ * Creates a new #GtkPaperSize object with the
+ * given parameters.
+ * 
+ * Return value: a new #GtkPaperSize object, use gtk_paper_size_free()
+ * to free it
+ *
+ * Since: 2.10
+ */
 GtkPaperSize *
-gtk_paper_size_new_custom (const char *name, 
-                          const char *display_name,
-                          double      width, 
-                          double      height, 
-                          GtkUnit     unit)
+gtk_paper_size_new_custom (const gchar *name, 
+                          const gchar *display_name,
+                          gdouble      width, 
+                          gdouble      height, 
+                          GtkUnit      unit)
 {
   GtkPaperSize *size;
   g_return_val_if_fail (name != NULL, NULL);
@@ -307,6 +358,16 @@ gtk_paper_size_new_custom (const char *name,
   return size;
 }
 
+/**
+ * gtk_paper_size_copy:
+ * @other: a #GtkPaperSize
+ * 
+ * Copies an existing #GtkPaperSize.
+ * 
+ * Return value: a copy of @other
+ *
+ * Since: 2.10
+ */
 GtkPaperSize *
 gtk_paper_size_copy (GtkPaperSize *other)
 {
@@ -329,6 +390,14 @@ gtk_paper_size_copy (GtkPaperSize *other)
   return size;
 }
 
+/**
+ * gtk_paper_size_free:
+ * @size: a #GtkPaperSize
+ * 
+ * Free the given #GtkPaperSize object.
+ *
+ * Since: 2.10
+ */
 void
 gtk_paper_size_free (GtkPaperSize *size)
 {
@@ -338,6 +407,18 @@ gtk_paper_size_free (GtkPaperSize *size)
   g_free (size);
 }
 
+/**
+ * gtk_paper_size_is_equal:
+ * @size1: a #GtkPaperSize object
+ * @size2: another @GtkPaperSize object
+ * 
+ * Compares two #GtkPaperSize objects.
+ * 
+ * Return value: %TRUE, if @size1 and @size2 
+ * represent the same paper size
+ *
+ * Since: 2.10
+ */
 gboolean
 gtk_paper_size_is_equal (GtkPaperSize *size1,
                         GtkPaperSize *size2)
@@ -348,8 +429,18 @@ gtk_paper_size_is_equal (GtkPaperSize *size1,
   return strcmp (gtk_paper_size_get_name (size1),
                 gtk_paper_size_get_name (size2)) == 0;
 }
-G_CONST_RETURN char *
+
+/**
+ * gtk_paper_size_get_name:
+ * @size: a #GtkPaperSize object
+ * 
+ * Gets the name of the #GtkPaperSize.
+ * 
+ * Return value: the name of @size
+ *
+ * Since: 2.10
+ */
+G_CONST_RETURN gchar *
 gtk_paper_size_get_name (GtkPaperSize *size)
 {
   if (size->name)
@@ -358,7 +449,17 @@ gtk_paper_size_get_name (GtkPaperSize *size)
   return paper_names + size->info->name;
 }
 
-G_CONST_RETURN char *
+/**
+ * gtk_paper_size_get_display_name:
+ * @size: a #GtkPaperSize object
+ * 
+ * Gets the human-readable name of the #GtkPaperSize.
+ * 
+ * Return value: the human-readable name of @size
+ *
+ * Since: 2.10
+ */
+G_CONST_RETURN gchar *
 gtk_paper_size_get_display_name (GtkPaperSize *size)
 {
   if (size->display_name)
@@ -367,7 +468,18 @@ gtk_paper_size_get_display_name (GtkPaperSize *size)
   return gettext (paper_names + size->info->display_name);
 }
 
-G_CONST_RETURN char *
+/**
+ * gtk_paper_size_get_ppd_name:
+ * @size: a #GtkPaperSize object
+ * 
+ * Gets the PPD name of the #GtkPaperSize, which
+ * may be %NULL.
+ * 
+ * Return value: the PPD name of @size
+ *
+ * Since: 2.10
+ */
+G_CONST_RETURN gchar *
 gtk_paper_size_get_ppd_name (GtkPaperSize *size)
 {
   if (size->ppd_name)
@@ -377,26 +489,74 @@ gtk_paper_size_get_ppd_name (GtkPaperSize *size)
   return NULL;
 }
 
-double
-gtk_paper_size_get_width (GtkPaperSize *size, GtkUnit unit)
+/**
+ * gtk_paper_size_get_width:
+ * @size: a #GtkPaperSize object
+ * @unit: the unit for the return value
+ * 
+ * Gets the paper width of the #GtkPaperSize, in 
+ * units of @unit.
+ * 
+ * Return value: the paper width 
+ *
+ * Since: 2.10
+ */
+gdouble
+gtk_paper_size_get_width (GtkPaperSize *size, 
+                         GtkUnit       unit)
 {
   return _gtk_print_convert_from_mm (size->width, unit);
 }
-double
-gtk_paper_size_get_height (GtkPaperSize *size, GtkUnit unit)
+
+/**
+ * gtk_paper_size_get_height:
+ * @size: a #GtkPaperSize object
+ * @unit: the unit for the return value
+ * 
+ * Gets the paper height of the #GtkPaperSize, in 
+ * units of @unit.
+ * 
+ * Return value: the paper height 
+ *
+ * Since: 2.10
+ */
+gdouble
+gtk_paper_size_get_height (GtkPaperSize *size, 
+                          GtkUnit       unit)
 {
   return _gtk_print_convert_from_mm (size->height, unit);
 }
 
+/**
+ * gtk_paper_size_is_custom:
+ * @size: a #GtkPaperSize object
+ * 
+ * Returns %TRUE if @size is not a standard paper size.
+ * 
+ * Return value: whether @size is a custom paper size.
+ **/
 gboolean
 gtk_paper_size_is_custom (GtkPaperSize *size)
 {
   return size->is_custom;
 }
 
-/* Only for custom sizes: */
+/**
+ * gtk_paper_size_set_size:
+ * @size: a custom #GtkPaperSize object
+ * @width: the new width in units of @unit
+ * @height: the new height in units of @unit
+ * @unit: the unit for @width and @height
+ * 
+ * Changes the dimensions of a @size to @width x @height.
+ *
+ * Since: 2.10
+ */
 void
-gtk_paper_size_set_size (GtkPaperSize *size, double width, double height, GtkUnit unit)
+gtk_paper_size_set_size (GtkPaperSize *size, 
+                        gdouble       width, 
+                        gdouble       height, 
+                        GtkUnit       unit)
 {
   g_return_if_fail (size != NULL);
   g_return_if_fail (size->is_custom);
@@ -408,7 +568,18 @@ gtk_paper_size_set_size (GtkPaperSize *size, double width, double height, GtkUni
 #define NL_PAPER_GET(x)         \
   ((union { char *string; unsigned int word; })nl_langinfo(x)).word
 
-G_CONST_RETURN char *
+/**
+ * gtk_paper_size_get_default:
+ *
+ * Returns the name of the default paper size, which 
+ * depends on the current locale.  
+ * 
+ * Return value: the name of the default paper size. The string
+ * is owned by GTK+ and should not be modified.
+ * 
+ * Since: 2.10
+ */
+G_CONST_RETURN gchar *
 gtk_paper_size_get_default (void)
 {
   char *locale, *freeme = NULL;
@@ -464,20 +635,44 @@ gtk_paper_size_get_default (void)
  * inches (0.38cm) for A4.
  */
 
-double
-gtk_paper_size_get_default_top_margin (GtkPaperSize *size, GtkUnit unit)
+/**
+ * gtk_paper_size_get_default_top_margin:
+ * @size: a #GtkPaperSize object
+ * @unit: the unit for the return value
+ * 
+ * Gets the default top margin for the #GtkPaperSize.
+ * 
+ * Return value: the default top margin
+ *
+ * Since: 2.10
+ */
+gdouble
+gtk_paper_size_get_default_top_margin (GtkPaperSize *size, 
+                                      GtkUnit       unit)
 {
-  double margin;
+  gdouble margin;
 
   margin = _gtk_print_convert_to_mm (0.25, GTK_UNIT_INCH);
   return _gtk_print_convert_from_mm (margin, unit);
 }
 
-double
-gtk_paper_size_get_default_bottom_margin (GtkPaperSize *size, GtkUnit unit)
+/**
+ * gtk_paper_size_get_default_bottom_margin:
+ * @size: a #GtkPaperSize object
+ * @unit: the unit for the return value
+ * 
+ * Gets the default bottom margin for the #GtkPaperSize.
+ * 
+ * Return value: the default bottom margin
+ *
+ * Since: 2.10
+ */
+gdouble
+gtk_paper_size_get_default_bottom_margin (GtkPaperSize *size, 
+                                         GtkUnit       unit)
 {
-  double margin;
-  const char *name;
+  gdouble margin;
+  const gchar *name;
 
   margin = _gtk_print_convert_to_mm (0.25, GTK_UNIT_INCH);
 
@@ -490,19 +685,43 @@ gtk_paper_size_get_default_bottom_margin (GtkPaperSize *size, GtkUnit unit)
   return _gtk_print_convert_from_mm (margin, unit);
 }
 
-double
-gtk_paper_size_get_default_left_margin (GtkPaperSize *size, GtkUnit unit)
+/**
+ * gtk_paper_size_get_default_left_margin:
+ * @size: a #GtkPaperSize object
+ * @unit: the unit for the return value
+ * 
+ * Gets the default left margin for the #GtkPaperSize.
+ * 
+ * Return value: the default left margin
+ *
+ * Since: 2.10
+ */
+gdouble
+gtk_paper_size_get_default_left_margin (GtkPaperSize *size, 
+                                       GtkUnit       unit)
 {
-  double margin;
+  gdouble margin;
 
   margin = _gtk_print_convert_to_mm (0.25, GTK_UNIT_INCH);
   return _gtk_print_convert_from_mm (margin, unit);
 }
 
-double
-gtk_paper_size_get_default_right_margin (GtkPaperSize *size, GtkUnit unit)
+/**
+ * gtk_paper_size_get_default_right_margin:
+ * @size: a #GtkPaperSize object
+ * @unit: the unit for the return value
+ * 
+ * Gets the default right margin for the #GtkPaperSize.
+ * 
+ * Return value: the default right margin
+ *
+ * Since: 2.10
+ */
+gdouble
+gtk_paper_size_get_default_right_margin (GtkPaperSize *size, 
+                                        GtkUnit       unit)
 {
-  double margin;
+  gdouble margin;
 
   margin = _gtk_print_convert_to_mm (0.25, GTK_UNIT_INCH);
   return _gtk_print_convert_from_mm (margin, unit);
index 094d2aeee9e667f7282039c30d8764c063b71ccc..679915cdab0190b65c365f6d936ee7812030c5dc 100644 (file)
@@ -41,15 +41,15 @@ typedef struct _GtkPaperSize GtkPaperSize;
 
 GType gtk_paper_size_get_type (void) G_GNUC_CONST;
 
-GtkPaperSize *gtk_paper_size_new          (const char   *name);
-GtkPaperSize *gtk_paper_size_new_from_ppd (const char   *ppd_name,
-                                          const char   *ppd_display_name,
-                                          double        width,
-                                          double        height);
-GtkPaperSize *gtk_paper_size_new_custom   (const char   *name,
-                                          const char   *display_name,
-                                          double        width,
-                                          double        height,
+GtkPaperSize *gtk_paper_size_new          (const gchar  *name);
+GtkPaperSize *gtk_paper_size_new_from_ppd (const gchar  *ppd_name,
+                                          const gchar  *ppd_display_name,
+                                          gdouble       width,
+                                          gdouble       height);
+GtkPaperSize *gtk_paper_size_new_custom   (const gchar  *name,
+                                          const gchar  *display_name,
+                                          gdouble       width,
+                                          gdouble       height,
                                           GtkUnit       unit);
 GtkPaperSize *gtk_paper_size_copy         (GtkPaperSize *other);
 void          gtk_paper_size_free         (GtkPaperSize *size);
@@ -58,30 +58,30 @@ gboolean      gtk_paper_size_is_equal     (GtkPaperSize *size1,
 
 
 /* The width is always the shortest side, measure in mm */
-G_CONST_RETURN char *   gtk_paper_size_get_name         (GtkPaperSize *size);
-G_CONST_RETURN char *   gtk_paper_size_get_display_name (GtkPaperSize *size);
-G_CONST_RETURN char *   gtk_paper_size_get_ppd_name     (GtkPaperSize *size);
+G_CONST_RETURN gchar *gtk_paper_size_get_name         (GtkPaperSize *size);
+G_CONST_RETURN gchar *gtk_paper_size_get_display_name (GtkPaperSize *size);
+G_CONST_RETURN gchar *gtk_paper_size_get_ppd_name     (GtkPaperSize *size);
 
-double   gtk_paper_size_get_width        (GtkPaperSize *size, GtkUnit unit);
-double   gtk_paper_size_get_height       (GtkPaperSize *size, GtkUnit unit);
+gdouble  gtk_paper_size_get_width        (GtkPaperSize *size, GtkUnit unit);
+gdouble  gtk_paper_size_get_height       (GtkPaperSize *size, GtkUnit unit);
 gboolean gtk_paper_size_is_custom        (GtkPaperSize *size);
 
 /* Only for custom sizes: */
-void gtk_paper_size_set_size             (GtkPaperSize *size, 
-                                          double        width, 
-                                          double        height, 
-                                          GtkUnit       unit);
-
-double gtk_paper_size_get_default_top_margin    (GtkPaperSize *size,
-                                                GtkUnit       unit);
-double gtk_paper_size_get_default_bottom_margin (GtkPaperSize *size,
-                                                GtkUnit       unit);
-double gtk_paper_size_get_default_left_margin   (GtkPaperSize *size,
-                                                GtkUnit       unit);
-double gtk_paper_size_get_default_right_margin  (GtkPaperSize *size,
-                                                GtkUnit       unit);
-
-G_CONST_RETURN char * gtk_paper_size_get_default (void);
+void    gtk_paper_size_set_size                  (GtkPaperSize *size, 
+                                                  gdouble       width, 
+                                                  gdouble       height, 
+                                                  GtkUnit       unit);
+
+gdouble gtk_paper_size_get_default_top_margin    (GtkPaperSize *size,
+                                                 GtkUnit       unit);
+gdouble gtk_paper_size_get_default_bottom_margin (GtkPaperSize *size,
+                                                 GtkUnit       unit);
+gdouble gtk_paper_size_get_default_left_margin   (GtkPaperSize *size,
+                                                 GtkUnit       unit);
+gdouble gtk_paper_size_get_default_right_margin  (GtkPaperSize *size,
+                                                 GtkUnit       unit);
+
+G_CONST_RETURN gchar *gtk_paper_size_get_default (void);
 
 G_END_DECLS